/* 
 * File:   IntegerDivisionParameterCommand.h
 * Author: Gab'z
 *
 * Created on 9 juin 2012, 22:00
 */

#ifndef INTEGERDIVISIONPARAMETERCOMMAND_H
#define	INTEGERDIVISIONPARAMETERCOMMAND_H

#include "ParametersCommand.h"

namespace calculator {

    class IntegerDivisionParameterCommand : public ParametersCommand {
        friend class CommandMap;

    public:
        virtual IntegerDivisionParameterCommand* clone() const;
        
        void apply(Parameters* parameters) const;
        virtual ~IntegerDivisionParameterCommand();
        const Memento* createMemento() const throw (CommandException);
        void restoreFromMemento(const Memento* memento) const throw (MementoException);

    protected:
        IntegerDivisionParameterCommand(const std::string name);
        IntegerDivisionParameterCommand(const IntegerDivisionParameterCommand& orig);
    };

}

#endif	/* INTEGERDIVISIONPARAMETERCOMMAND_H */

